import {
    test,
    getLogin,
    getPost,
    getPostDetail,
    getBanners
} from '../apis/index'
const app = getApp()
Page({

    /**
     * 页面的初始数据
     */
    data: {
        serverurl: 'http://127.0.0.1:8080',
        page: 1,
        list: [],
        banners: [], // 轮播图
        q: ''
    },

    /**
     * 生命周期函数--监听页面加载
     */
    onLoad: function (options) {
        // 从本地缓存中获取 token
        const token = wx.getStorageSync('token');

        if (token) {
            console.log('成功从本地获取到 token:', token);
            // 在这里可以根据获取到的 token 执行相应操作，比如跳转到其他页面等
            const res = test()

        } else {
            console.log('本地没有存储 token');
            // 没有token，调用api对用户进行判断，是token过期了，还是用户没有登录
            getLogin()
        }
        // 调用函数发起请求获取帖子数据
        this.post()




        // 获取轮播图
        getBanners().then((res) => {
            console.log("js界面中的getbanners请求发送成功！", res);
            this.setData({
                banners: res.data
            })
        }).catch((err) => {
            console.log("js界面中的getbanners请求发送失败！", err);
        })

    },
    post() {
        // 封装后的获取帖子函数
        getPost(this.data.page).then((res) => {
            if (res.statusCode == 404) {
                wx.showToast({
                    title: '已经到头啦！',
                    icon: 'error'
                })
                return
            }
            this.setData({
                list: this.data.list.concat(res.data.results)
            })
        }).catch((err) => {
            console.log("index.js界面中的帖子数据请求失败", err);
        })
    },


    // 轮播图点击事件处理函数
    onBannerTap: function (event) {
        const title = event.currentTarget.dataset.title;
        const content = event.currentTarget.dataset.content;
        wx.navigateTo({
            url: `../banner/banner?title=${encodeURIComponent(title)}&content=${encodeURIComponent(content)}`,
        });
    },
    // 导航到二手交易页面
    navigateToSecondHand: function () {
        wx.navigateTo({
            url: '../hand/hand',
        });
    },

    // 导航到周边商家页面
    navigateToNearbyShops: function () {
        wx.navigateTo({
            url: '../shopInfo/shopInfo',
        });
    },

    // 点击帖子进入帖子详情页
    postDetails: function (res) {
        console.log("用户点击了帖子详情", res);
        const postId = res.currentTarget.dataset.postid;
        getPostDetail(postId)
    },

    // 前往用户主页
    goUserHome(e) {
        console.log(e.currentTarget.dataset.id);
        wx.navigateTo({
            url: '../otherHome/otherHome?id=' + e.currentTarget.dataset.id,
        })
    },
    // 获取用户输入内容
    inputSearch(e) {
        console.log(e.detail.value);
        this.data.q = e.detail.value
    },
    // 前往搜索页面
    onSearch() {
        if (this.data.q =='') {
            wx.showToast({
              title: '请先输入内容！',
              icon:'error'
            })
            return
        }
        wx.navigateTo({
            url: '../searchList/searchList?q=' + this.data.q,
        })
    },


    /**
     * 生命周期函数--监听页面初次渲染完成
     */
    onReady: function () {

    },

    /**
     * 生命周期函数--监听页面显示
     */
    onShow: function () {
    },
    
    /**
     * 生命周期函数--监听页面隐藏
     */
    onHide: function () {

    },

    /**
     * 生命周期函数--监听页面卸载
     */
    onUnload: function () {

    },

    /**
     * 页面相关事件处理函数--监听用户下拉动作
     */
    onPullDownRefresh: function () {
        this.onLoad()
        // 数据请求完成后记得调用停止下拉刷新的方法
        wx.stopPullDownRefresh();
    },

    /**
     * 页面上拉触底事件的处理函数
     */
    onReachBottom: function () {
        console.log("用户下拉");
        this.data.page++
        this.post()
    },

    /**
     * 用户点击右上角分享
     */
    onShareAppMessage: function () {

    }
})